package org.example.analysis.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.example.analysis.model.entity.EntryPointInfo;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 入口点信息Mapper
 */
public interface EntryPointInfoMapper extends BaseMapper<EntryPointInfo> {
    /**
     * 根据项目名称获取所有入口点
     */
    List<EntryPointInfo> getEntryPointsByProjectName(String projectName);
    
    /**
     * 删除项目的所有入口点
     */
    void deleteByProjectName(@Param("projectName") String projectName);

    /**
     * 批量插入入口点信息
     * @param entryPoints 入口点信息列表
     * @return 插入的记录数
     */
    int insertBatch(@Param("list") List<EntryPointInfo> entryPoints);

    /**
     * 删除指定projectName下refreshable=true的入口点
     */
    void deleteRefreshableByProjectName(@Param("projectName") String projectName);
} 